Position determination system that uses A cellular communication system

ABSTRACT

A position determination system and apparatus for utilizing a network of cellular base stations to determine position of a mobile station includes taking a plurality of statistically independent data measurements of the pilot signals from the base stations. Each of the data measurements includes an earliest time of arrival, providing multiple independent measurements for each of the pilot signals. For each cellular base station, a representative measurement is calculated responsive to the independent measurements, which is used to determine position of the mobile station using an AFLT algorithm and/or in conjunction with a GPS algorithm. In some embodiments, the data measurements for each pilot signal further include an RMSE estimate and time of measurement for each time of arrival, and an energy measurement for all resolvable paths. If the mobile station comprises a cell phone, a cell search list and a GPS search list may be provided by a cell base station.

RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.10/102,361, filed Mar. 19, 2002, entitled “Position Determination SystemThat Uses A Cellular Communication System,” which claims the benefit ofU.S. Provisional Application No. 60/340,804 filed Dec. 14, 2001, whichare assigned to the assignee hereof and which are expressly incorporatedherein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to position location systems that utilizewireless signals to determine the location of a device.

2. Description of Related Art

Existing position location technologies based on GPS use a network ofsatellites in earth orbit that transmit signals at a known time. A GPSreceiver on the ground measures the time of arrival of the signals fromeach satellite in the sky it can “see”. The time of arrival of thesignal along with the exact location of the satellites and the exacttime the signal was transmitted from each satellite is used totriangulate the position of the GPS receiver. A GPS receiver requiresfour satellites to make a triangulation and the performance of theresulting position location increases as the number of satellites thatcan be detected increases.

One problem with GPS arises if only three (or less) satellites can befound, and in such an instance it is not possible to accurately locatethe GPS receiver. For example, if the GPS receiver's view of the sky isobstructed (e.g. near a tall building) it may not be possible to locateenough GPS satellites to determine location.

Another problem with GPS relates to the amount of time the GPS receiverrequires to scan the sky to locate all available satellites (a “coldstart”). GPS signals from satellites are highly directional andinherently weak, and therefore finding all available satellites mayconsume several minutes, even in an open space. Once the satellites havebeen located by the GPS receiver, only then can they be easily trackedand quickly relocated by the receiver in order to update position inreal time.

It has been suggested to use the existing network of cellular basestations to locate position, in a similar manner as GPS.Theoretically-speaking, the exact location of each base station, theexact time at which the base station is transmitting, and the time ofarrival of the base station's signal at a mobile station (e.g. cellphone) can be used to triangulate the position of the mobile station.This technique is referred to as Advanced Forward Link Trilateration(“AFLT”). A critical problem faced by the mobile station is to measurethe time of arrival of the signals it is receiving from each basestation. The simplest method of doing this would be to make a singlemeasurement of the time of arrival for each signal. In one example asingle measurement consists of correlating the received signal with alocally generated copy of the transmitted signal, and searching for thepeak of this correlation. The goal is to measure the time of arrival ofthe earliest arrival path from the base station.

In practice, it has proven difficult to implement an AFLT system thatcan accurately determine the position of a mobile station. Measuring thetime of arrival, which is critical to the AFLT process, is difficult ina non-line of sight and/or a dynamic fading environment where multiplepaths from the same transmitter are fading in and out unpredictably. Forexample, if the mobile station is behind an obstruction, the signal fromthe base station may reflect once, twice, or more along multiple pathsbefore being received by the mobile station. The signal may also godirectly through the building, but it may be received as a very weaksignal compared to the stronger reflected signal(s).

In part due to the relatively long distance between the satellites andthe GPS receiver, a GPS system is not intended to operate in dynamicfading and/or non-line of sight environments. Typically, a GPS receivermakes a single measurement of each satellite, or sometimes it may makemultiple measurements with dynamic integration lengths, to determine thecorrect integration parameters for centering the dynamic range of theavailable fixed point processor around the received signal strength.Such an approach is not suitable in an AFLT environment, where multiplepaths from the same transmitter are fading in and out unpredictably.

It would be advantageous to utilize cellular base stations for positionlocation purposes. The FCC has mandated that cellular operators providea system for accurately locating the position of cell phones, forreasons including emergency assistance related to “911” calls. For thisand other reasons, an effective AFLT system would be useful.

SUMMARY OF THE INVENTION

A method and apparatus are disclosed herein for effectively utilizing acellular network of cellular base stations to determine position of amobile station even in non-line of sight and/or dynamic fadingenvironments, by taking a series of substantially statisticallyindependent measurements of signals from the cellular base stations. Themethod may be used by itself in an AFLT algorithm; alternatively, inorder to enhance performance of a GPS system, the existing network ofcellular base stations can be treated as a secondary network ofsatellites for position location purposes. The AFLT technique, combinedwith GPS, is referred to as hybrid GPS/AFLT.

A method for determining the position of a mobile station using aplurality of cellular base stations each emitting a unique pilot signalcomprises taking a plurality of statistically independent datameasurements of the pilot signals from each of the plurality of cellularbase stations. Each of the data measurements includes an earliest timeof arrival estimate for each pilot signal, thereby providing a pluralityof independent measurements of the earliest time of arrival for each ofthe pilot signals from the plurality of cellular base stations. For eachcellular base station, a representative measurement is calculatedincluding the earliest time of arrival responsive to the independentmeasurements for the cellular base station. At least one of therepresentative measurements is used to determine the position of themobile station. In some embodiments, the data measurements furtherinclude an RMSE (Root Mean Squared Error) estimate and a time ofmeasurement for each time of arrival, and an energy measurement (e.g.Ec/Io) for all resolvable paths of the pilot signal. In some embodimentsthe step of calculating representative measurements for a pilot IDincludes selecting data measurements and averaging the selected times ofarrival that fall within a predetermined window.

The data measurements are taken in such a manner as to be substantiallyindependent from a statistical standpoint; e.g. each data measurement ofthe same pilot signal is highly likely to be independent from (i.e.substantially not correlated with) all the other data measurements takenof that pilot signal. Statistical independence can be provided bysufficiently separating the data measurements in time, space, frequencyor any combination thereof, to provide a high likelihood of independencebetween data measurements taken of the same pilot signal.

The representative measurements may be used in an AFLT algorithm todetermine position; alternatively one or more of the representativemeasurements may be used together with a GPS algorithm to determineposition. In some embodiments the mobile station comprises a cell phoneand the method further comprises connecting the cell phone to one of thecellular base stations prior to taking data, and providing a cell searchlist of cellular base stations in the area from which data measurementsmay be taken. In embodiments that include a GPS system, the cellularbase station can also provide a GPS search list, which can be used toreduce the time necessary to determine position.

In one embodiment a mobile station utilizes a cellular network thatincludes a plurality of cellular base stations each emitting a uniquepilot signal to determine position. The mobile station comprises acellular communication system for communicating with the cellular basestations, a database that stores a plurality of data measurementsincluding an earliest time of arrival for each pilot signal, includingmultiple data measurements for each pilot signal, a representativemeasurement calculation system configured to receive data measurementsfrom the database, and responsive thereto to provide a representativemeasurement of the time of arrival for each pilot signal, and a positioncalculation and control system configured to receive the representativemeasurements for each pilot signal, and responsive thereto determine theposition of the mobile station. In some embodiments the mobile stationfurther comprises a GPS communication system, and the positioncalculation and control system is configured to receive GPS datameasurements, and responsive thereto determine the position of themobile station. In some embodiments the database includes memory thatstores an RMSE estimate and a time of measurement for each time ofarrival, and the representative measurement calculation system furthercomprises means for calculating a representative measurement for theRMSE estimate for each pilot signal. Furthermore, the database includesmemory that stores an energy measurement (e.g. Ec/Io) for each pilotsignal in the database. The mobile station may comprise a cell phone orother mobile device such as a personal digital assistant.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of this invention, reference is nowmade to the following detailed description of the embodiments asillustrated in the accompanying drawing, wherein:

FIG. 1 is a perspective view of a plurality of cellular base stations,GPS satellites, and a user holding a mobile station such as a cellphone;

FIG. 2 is a perspective view of a user holding a mobile station in amultipath environment, illustrating the different path lengths of threepaths from the same cellular station;

FIG. 3 is a block diagram of one embodiment of a mobile stationincorporating cellular and GPS communication systems, a database thatholds data measurements, and AFLT and GPS systems;

FIG. 4 is a flowchart of operations to determine position of a mobilestation;

FIG. 5 is a flowchart of operations to obtain a representativemeasurement from a plurality of data measurements for each pilot signal;

FIG. 6 is a diagram of one embodiment of a PPM database 38 that stores aplurality of data measurements for each pilot signal; and

FIG. 7 is a flow chart of operations in one embodiment to calculate therepresentative measurements responsive to the data measurements.

DETAILED DESCRIPTION

Overview

A method and apparatus is disclosed for measuring the time of arrival ofthe earliest arriving multipath by repeatedly taking data measurementsfrom a group of pilot signals and storing a plurality of datameasurements for each pilot signal. In one described embodiment, thedata measurements are sufficiently spaced out in time that the detectedquantities (e.g. energies) of the various received multipaths aresubstantially statistically independent for each subsequent data-takingcycle. Advantageously, the earliest multipath that might not have beendetected during some data measurement cycles due to fading will mostlikely be detected during other data measurement cycles. Aftersufficient data measurements have been collected, the contents of thedatabase are used to compute a representative measurement thatrepresents the time of arrival of the earliest received multipath foreach pilot signal. In one embodiment, the representative time of arrivalfor each pilot ID in the database is computed by finding the earliestmeasurement in the database, and averaging the time of arrival for allmeasurements within a predetermined window of time.

In order to make multiple independent measurements of the detectablemultipaths, in one embodiment measurements are made at different times.In alternative embodiments measurements are made from two or moredifferent receive antennas, or measurements are made of signals from twoor more different transmit antennas or any combination thereof.

This invention is described in the following description with referenceto the Figures, in which like numbers represent the same or similarelements.

Glossary of Terms and Acronyms

The following terms and acronyms are used throughout the detaileddescription:

AFLT Advanced Forward Link Trilateration

CDMA Code Division Multiple Access

GPS Global Positioning System

GSM Global System for Mobile Communications

Mobile Station A portable device, such as a cell phone, typicallycarried by a user whose location is to be determined.

Pilot Signal A signal, typically a psuedo-random sequence, emitted by acellular station for the purpose of establishing communication withremote devices. Although the term “pilot” is often used in the contextof CDMA cellular systems, this term also applies broadly to all othercellular communication systems.

RMSE Estimate. Root Mean Squared Error—An indication of the Ec/Io of apilot signal.

Table of Variables

Following is a table that sets forth some of the variables discussedherein:

Parameter Description

-   -   D_(p) Maximum number of pilot ID's stored in PPM DB    -   D_(m) Maximum number of measurements stored per PN    -   RMSE_(MAX) Maximum RMSE that can be stored in the PPM DB.    -   N_(a) Window length used to select which data measurements        should be used to compute the time of arrival    -   T_(AGE) Delay before aging RMSE's of measurements        Overview

FIG. 1 is a perspective view of a plurality of cellular base stationsshown collectively at 10, GPS satellites shown collectively at 12, and auser 14 holding a mobile station 16 such as a cell phone. The cellularbase stations comprise any collection of cellular base stations utilizedas part of a communication network for connection with the mobilestation. The cellular base stations typically provide communicationservices that allow a user of a cell phone to connect to another phoneover a communication network 18; however the cellular base stationscould also be utilized with other devices and/or for other communicationpurposes such as an internet connection with a handheld personal digitalassistant (PDA). In one embodiment, the cellular base stations 10 arepart of a CDMA communication network; however in other embodiments othertypes of communication networks, such as GSM networks, may be used. Eachof the cellular stations periodically emits a psuedo-random sequencethat uniquely identifies the cell station. The psuedo-random sequence isa series of bits that are useful for the receiver to lock upon. In CDMAparlance this psuedo-random sequence is termed a “pilot signal”; as usedherein, the term pilot signal can apply to any cellular system as wellas to CDMA systems.

The GPS satellites comprise any group of satellites used for positioninga GPS receiver. The satellites periodically send out radio signals thatthe GPS receiver can detect, and the GPS receiver measures the amount oftime it takes for the radio signal to travel from the satellite to thereceiver. Since the speed at which the radio signals travel is known,and the satellites are synchronized to periodically emit their signalevery millisecond coincident with “GPS time”; therefore it is possibleto determine how far the signals have traveled by determining how longit took for them to arrive. To a user situated in open space, the GPSreceiver typically has an unobstructed view of the satellites. Thus whenthe user is in open space, measuring the time of arrival of the GPSsignal is straightforward because it is typically a straight “line ofsight” from the satellite to the receiver. However, in the cellularcontext, a user may be situated in a city with buildings or otherobstacles that block the direct line of sight and/or reflect the samesignal multiple times along multiple paths, and in such an instance thereflected signal(s) may be the only signal(s) detectable.

FIG. 2 is a perspective view of a user 14 holding a mobile station 16such as a cell phone in a multipath environment. FIG. 2 illustrates themultipath problem occurs when the signal from the cellular base station10 a has multiple paths to the mobile station 16. Particularly, a directsignal 20 goes through a first obstruction 21, such as a building, andis attenuated to some extent. A first reflected signal 22 reflects froma second obstacle 23 before being received by the mobile station 16. Asecond reflected signal 24 reflects from a third obstacle 25 beforebeing received by the mobile station 16. FIG. 2 is simplified forillustration purposes, and it should be clear that other paths mayexist, and that in some environments the signal may reflect not justonce, but two, three or more times before being received by the mobilestation 16. Furthermore, due to attenuation of the direct signal 20 asit passes through the first obstruction 21, one or both of the reflectedsignals 22 and 24 may be significantly greater in amplitude than thedirect signal 20

The amount of time necessary for each signal emitted from the basestation 10 a to travel to the mobile station 16 depends upon thedistance that each signal travels. As each of the signals 20, 22, and 24are emitted from the cellular base station 10 a at the same time, theamount of time difference between the received signals is dependent uponthe difference in distance. If amount of the time for the direct signal20 to travel to the mobile station 16 is t_(o), then the amount of timefor the first reflected signal 22 to travel to the mobile station ist_(o)+Δt₁, and the amount of time for the second reflected signal 24 totravel to the mobile station is t_(o)+Δt₂. The challenge for an AFLTsystem is to determine the earliest arriving signal, which hopefullycorresponds to t_(o), the time of arrival of the direct signal 20.

FIG. 3 is a block diagram of one embodiment of a mobile stationincorporating cellular and GPS communication systems, and includingsystems for AFLT as described herein. This embodiment utilizes both GPSand/or AFLT to determine position; however in alternative embodimentsAFLT may be used alone. FIG. 3 shows a cellular communication system 30connected to one or more antennas 31. The cellular communication systemcomprises suitable devices, hardware, and software for communicatingwith and/or detecting signals from cellular base stations. The cellularcommunication system 30 is connected to a mobile station control system32, which typically includes a microprocessor that provides standardprocess functions, as well as other calculation and control systems. Aposition calculation system 33, connected to the mobile station controlsystem 32, requests information and operations as appropriate from theother systems, and performs the calculations necessary to determineposition using any suitable AFLT algorithm, GPS algorithm, or acombination of AFLT and GPS algorithms (“hybrid AFLT/GPS”).

In one embodiment, the cellular communication system 30 comprises a CDMAcommunication system suitable for communicating with a CDMA network ofbase stations; however in other embodiments, the cellular communicationsystem may comprise another type of network such as GSM. A GPScommunication system 34, which comprises any suitable hardware andsoftware for receiving and processing GPS signals, is also connected tothe mobile station control system 32. User input is provided via a userinterface 36 that typically includes a keypad. The user interfaceincludes a microphone/speaker combination for voice communicationservices using the cellular communication system. A display 37 comprisesany suitable display, such as a backlit LCD display. A PPM database 38,connected to the control system 32, is provided to store informationregarding observed data measurements for a plurality of pilot signals.One example of the database is shown in FIG. 6 and discussed withreference thereto. Each pilot signal is uniquely identified in thedatabase by a pilot ID. A representative measurement calculation system39 is connected to the control system and the database to calculate therepresentative measurements for each pilot ID responsive to theplurality of data measurements stored in the database, which isdisclosed in detail with reference to FIG. 5. In one embodiment, therepresentative measurements include an earliest time of arrivalestimate, an RMSE estimate, and an Ec/Io estimate for all resolvablepaths of each pilot signal.

FIG. 4 is a flowchart of operations to determine position of the mobilestation. At 41, a search list of cellular base station neighbors isobtained. The cell search list will be used to search for pilot signalsfrom the cellular stations on the list, and it may also includeinformation useful in finding the pilot signals of the stations on thelist.

The cell search list may be obtained in a variety of ways; in one simpleembodiment, the cell search list includes all possible pilot signals ina cellular system; however, searching all the possible pilot signals mayconsume an undesirable amount of time. In order to save time in oneembodiment, a local cellular base station communicating with the mobilestation can provide the cell search list for the mobile station. Ofcourse, this assumes that the mobile station can establish communicationwith the local cellular base station (or communication has already beenestablished). Alternatively, such as in the event that communicationcannot be established with any cellular base station, the mobile stationmay simply identify a local cellular base station, and then utilize analmanac stored within itself to determine a cell search list. A cellsearch list may be inferred from recent activity, or a default searchlist may be used. For example a cell search list may be inferred fromknowledge of the most recent cell station to which the mobile stationwas connected. If no list can be inferred, the cell search list maysimply include all cell stations, even though this may consume anundesirable amount of time. It should be noted that it may possible todetect a cellular base station without establishing communication; i.e.,the pilot signal may have enough power to be detected, but there is notenough power to establish communication between the base station and themobile station.

At 42, a plurality of statistically independent data measurements aretaken of the pilot signals from each cellular base station on the cellsearch list. It may be noted that, even if the strength of a pilotsignal is insufficient to establish communication, the pilot signal maystill have enough strength to measure the time of arrival and otherqualities.

The data measurements are taken in such a manner as to be substantiallystatistically independent; that is, each data measurement of the samepilot signal is highly likely to be independent from (e.g. substantiallynot correlated with) all the other data measurements taken of that pilotsignal. Statistical independence can be provided by sufficientlyseparating the data measurements in time, space, frequency or anycombination thereof, to provide a high likelihood of independencebetween data measurements taken of the same pilot signal. The particulartechnique (or combination of techniques) used to achieve statisticalindependence varies between embodiments, depending upon objectives suchas speed and accuracy, and subject to constraints such as cost, spaceand energy consumption limitations. Furthermore, it should be recognizedthat, under any of these techniques channel conditions may occur thatwould make the measurements correlated to some extent, and accordinglyin designing a system that takes independent measurements, assumptionsmay be made as to which technique (or combination of techniques) willprovide substantially independent data measurements most of the time inthe expected environment.

One technique to achieve statistical independence is to make a series ofdata measurements over time, with the time difference between successivemeasurements at least sufficient to justify the assumption ofindependence. Typically, the time difference between successivemeasurements should be chosen such that the fading characteristics ofthe channel will most likely change from one data measurement to thenext. In a non-moving environment, a time difference of at least 20milliseconds (ms) provides an independent sample, with no maximum timedifference except that imposed by practical constraints. Due topractical limitations, the time difference more typically ranges between100 ms to 2 seconds, and in one embodiment is about 0.5 seconds.

For purposes of implementation, it should be typically assumed that themobile station is traveling at slow speeds approaching standing still inwhich theoretically the channel doesn't change; however in practice afully static channel is usually not achievable. It may be noted that, ifthe mobile station is in fact moving, the required amount of timespacing will be less due to the difference in location betweensuccessive measurements, and accordingly in a moving vehicle the minimumtime difference to obtain independence is shorter than for a stationarystation.

Another technique to achieve statistical independence is to makeindependent measurements from two different locations in space. In onesuch embodiment, data measurements are taken from two or more antennas(see 31 in FIG. 3) where the minimum distance between any two antennasis greater than half the wavelength of the carrier frequency. As aresult, the fading characteristics are most likely independent on eachreceived signal. Practical values of antenna separation are generallyaround half the wavelength of the carrier frequency since usually it isdesirable to situate the antennas as closely together as possible.

Still another technique to achieve statistical independence is to makedata measurements at two or more different frequencies emitted from thesame cellular base station, if the cell stations in the networkbroadcasts the pilot signals on different frequency channels. In thistechnique, the frequency separation should be at least sufficient tomake multiple independent measurements even in fading environments, ifthe channel conditions are appropriate for this to be the case. Most ofthe time the frequency channels are spaced by a bandwidth greater than 1MHz, and in such networks the assumption of independence is usuallyaccurate.

Again, it should be recognized that any combination of the timedifference between measurements, taking measurements from differentspatial locations, or measuring multiple frequency channels could beused to achieve statistical independence of multiple data measurements.

In one embodiment, as will be described, the multiple independent datameasurements include an earliest time of arrival (TOA) estimate, an RMSEestimate of the path providing the earliest TOA, and an Ec/Io estimatefor all resolvable paths of the pilot signal, which will be used toupdate the Ec/Io for the pilot signal. The data measurements can bestored in a database such as shown in FIG. 6 in which each pilot signalis associated with a plurality of related data measurements. It may benoted in the embodiment shown in FIG. 6, instead of storing multiplevalues of the total energy (Ec/Io), only a single value of Ec/Io isstored for each pilot ID. With each new data measurement the storedvalue of Ec/Io for that pilot ID is updated using a suitable filter suchas a 1 tap IIR filter.

At 43, the representative measurements are calculated for each cellularbase station. Specifically, a single representative measurement iscalculated for each cellular base station, responsive to the multiplemeasurements taken during the search cycle. One representativemeasurement algorithm is described with reference to FIG. 5. Therepresentative measurements for one embodiment are shown together withthe PPM database in FIG. 6.

At 44, a GPS satellite search list is obtained. This is an optionaloperation, which advantageously provides a search list that can be usedby the GPS system to look for satellites and thereby reduce the timenecessary to locate sufficient satellites to get a position fix. The GPSsearch list includes information such as location of each viewablesatellite in the sky, and other information that may be useful inlocating the satellites and determining the time of arrival of eachsignal. The GPS search list can be obtained in like manner as theneighbor list at 41, such as by communication with a cellular station orinferred from recent activity in conjunction with an almanac that givesthe expected positions in the sky for each GPS satellite. Alternatively,the GPS system can simply search the entire sky; however such a full skysearch typically consumes at least several minutes of time.

At 45, GPS measurements are obtained in accordance with suitable GPSprocedures. In one embodiment, the GPS communication system first looksfor the satellites specified in the viewable satellite list, which cansignificantly reduce the time required to obtain sufficient GPS signals.

At 46, the position of the mobile station is determined using therepresentative measurements of the cellular base stations and/or the GPSmeasurements, as further described in more detail herein, using theposition calculation system 33. Using both AFLT and GPS algorithms canbe useful: for example if only three GPS measurements can be obtained(four are required for an accurate GPS fix), then a fourth measurementcan be obtained from the AFLT representative measurements. Even if fouror more GPS measurements can be obtained, the AFLT measurements can actas a check on the accuracy of the GPS fix.

FIG. 5 is a flowchart of operations to obtain representativemeasurements using the data measurements obtained during previoussearches. The following discussion utilizes CDMA terminology and CDMAtechnology for illustration purposes; however, it should be apparentthat other wireless communication systems could also be used. In a CDMAsystem, each cell base station transmits a unique periodic pilot signal,which is a psuedo-random sequence that allows the receiver to lock uponthe pilot and begin communication. Each pilot signal has a distinctsequence offset (sometimes termed “phase”) that distinguishes it fromall other cell stations in the vicinity. Furthermore, the cell stationsare all synchronized so that each emits its pilot signal at the sametime. In a CDMA system the pilot signals are periodically repeated every26.7 milliseconds.

At 51, the cell search list is obtained (as disclosed above at 41, forexample), which saves time by focusing search efforts on those pilotsignals that have a reasonable likelihood of being usable.

At 52 data measurements are taken of the pilot signals on the searchlist. Particularly, as each pilot signal is detected, data measurementsare made including the earliest time of arrival, and this data is storedin a database. In one embodiment, the data measurements taken for eachpilot signal include an earliest time of arrival (TOA) estimate, an RMSEestimate for the path corresponding to the earliest TOA, a measurementtime (TOM), and an energy measurement (Ec/Io) for all paths having thatpilot signal. It should be noted that box 52 is part of a loop that willbe performed multiple times to provide multiple data measurements. Ateach pass through the box 52, the new data measurements aresubstantially statistically independent from the data measurements takenin previous passes.

In one embodiment, the data measurements entered into the PPM databasefor each pilot ID indicate whether the pilot was detected, and ifdetected, includes a time of arrival, RMSE, and Ec/Io determined as setforth below. Other embodiments may determine these quantities indifferent ways.

The time of arrival in one embodiment is computed by using the energy ofthe peak and the energy at +/−0.5 chips away from the peak, andinterpolating to determine the value of the peak to the availableresolution. The interpolation technique uses a second order polynomialand fits the curve to the three samples of the peak returned by thehardware. The polynomial is given byy(x)=ax ² +bx+cwhere x is the value referenced to the center sample returned byhardware. Given this, solutions to a, b and c are:a=2y(0.5)+2y(−0.5)−4y(0)b=y(0.5)−y(−0.5)c=y(0)The interpolated peak position is in turn given by −b/2a relative to thepeak returned by hardware.

The RMSE metric indicates the Ec/Io of the individual path whose phaseis being reported. In one embodiment the RMSE estimate is computed usingthe following linear formula:

${RMSE} = {\frac{0.2}{\frac{E_{c}}{I_{o}}} + 10}$The desired minimum and maximum reported RMSE values are 10 and 223,respectively. This will allow the mobile station to report Ec/Io valuesfrom −4 dB to −30 dB. The result is an RMSE that decays exponentiallyversus Ec/Io in dB. Using the conditional mean formula to convert thesearcher output to Ec/Io, the mobile station in one embodiment cancompute the RMSE by using the following formula.

${RMSE} = {\frac{G^{2}{MN}^{2}}{5 \times ( {y - {G^{2}{MN}}} )} + 10}$where y is the raw searcher output, G² is a scaling factor of 9/2048 dueto truncation and saturation, N is the number of chips coherentlyaccumulated and M is the number of non-coherent sweeps. In oneembodiment the MS truncates the RMSE to an 8 bit unsigned quantity withvalues ranging from 10 to 223. Under this constraint, the computation inthe MS can be given as:

${RMSE} = \{ \begin{matrix}10 & {y > {{0.4\; G^{2}{MN}^{2}} + {G^{2}{MN}}}} \\223 & {y \leq {\frac{G^{2}{MN}^{2}}{1065} + {G^{2}{MN}}}} \\{\frac{G^{2}{MN}^{2}}{5 \times ( {y - {G^{2}{MN}}} )} + 10} & {otherwise}\end{matrix} $

The Ec/Io metric indicates the total Ec/Io of all of the resolvablepaths for a given PN. In one embodiment a resolvable path is defined asany peak above the noise floor for the given search parameters andwithin a predetermined number (W_(a)) chips of the strongest peak. Thetotal Ec/Io may be computed using the following formula:

$( \frac{E_{c}}{I_{o}} )_{total} = \frac{{\sum\limits_{k}y_{i}} - {{kG}^{2}{MN}}}{G^{2}{MN}^{2}}$where k is the number of resolvable paths and y_(i) are the searcheroutputs for each resolvable path, and G, M, and N are as defined above.

At 53, the most recent data measurements are entered into the PPMdatabase, one embodiment of which is shown in FIG. 6 and discussed withreference thereto. In some embodiments it may be necessary or desirablefor older and/or more unreliable data measurements to be removed fromthe database to make space for the most recent data measurements.

At 54, in one implementation the mobile station is designed torepeatedly search the pilot signals, take data measurements, and enterthe new measurements in the database until representative measurementsare requested by the mobile station. Of course in other embodimentsother strategies may be used; for example one alternative may be simplyto repeat the search a fixed number of times (e.g. 20). Until a finalresult has been requested, the cycle will repeatedly exit box 54 andrepeat through the steps 51, 52, and 53 to search the pilot signals,take another measurement and update the database. Once a final resulthas been requested, then operation will move to box 55.

At decision 55, a determination will be made as to whether or notsufficient data measurements exist in the database to compute arepresentative measurement. If, at 55, the data is insufficient tocalculate a representative measurement, then operation will exit thedecision 55 and repeat through the steps 51, 52, 53, and 54 to getanother set of data measurements and update the database. Assuming thatthe mobile station's request for representative measurements at 54remains outstanding, at the time when sufficient data measurements havebeen taken, then operation moves on from decision 55 to compute therepresentative measurements for each pilot signal.

The determination at 55 as to whether or not sufficient datameasurements exist can be made in a variety of ways, considering avariety of factors such as the number of measurements that can be storedin the database, the accuracy required, and so forth. In one embodiment,sufficient data measurements exist when a predetermined number (e.g. 10)of data measurement cycles have been completed. In other embodimentsother criteria could be used, such as after a predetermined length oftime (e.g. 6 seconds) has passed. Combinations can also be used toestablish the criteria.

At 56, the representative measurements are computed as described forexample with reference to FIG. 7. Generally the representativemeasurements are computed responsive to the multiple measurements storedin the database. The representative measurements provide a singlemeasurement of the time of arrival for each pilot signal, and inaddition other information, such as an RMSE estimate can be included.

At 57, the computed representative measurements are supplied to themobile station for use as desired. For example these representativemeasurements are useful in an AFLT algorithm for position location,alone or in conjunction with a GPS position location system.

At 58, a determination is made as to whether or not AFLT is stillrequired; i.e. whether additional representative measurements aredesired. In some circumstances the system may desire to continuallyupdate its position using AFLT, such as in a moving car. If AFLT isrequired, then the cycle will exit the decision 58 and repeat throughthe steps 51, 52, and 53, the decisions 54 and 55, and the computation56, to compute another group of representative measurements. If AFLT isnot required, then operation exits from the decision 58 and therepresentative measurement process is now complete.

FIG. 6 is a diagram of one embodiment of the PPM database 38 (FIG. 3)for storing data measurements made during the process of obtaining arepresentative measurement such as shown in FIG. 5. In this embodiment,the database 38 is termed a PPM (pilot phase measurement) database. Foreach pilot signal, an identification number (pilot ID) 61 is given. Eachpilot ID is associated with a plurality of stored measurements, shown inFIG. 6 in a plurality of rows 63, each representing a separate datameasurement associated with the respective pilot ID. The PPM databasesupports a finite number of pilot ID's (D_(p)) and a finite number ofmeasurements (D_(m)) for each pilot ID. The actual number of pilot ID'sand the actual number of measurements supported for each pilot ID variesbetween embodiments, and typically depends upon a cost vs. benefitanalysis appropriate to the particular implementation and other factorssuch as the speed of search performed. In one embodiment twenty pilotIDs are supported, and each pilot ID can have up to 5 associated datameasurements. The PPM database is implemented in any suitable formatincluding memory, control hardware, and software routines; for examplethe PPM database may be in the form of a relational database thatcomprises a plurality of related databases.

For each pilot signal searched, the data measurements in one embodimentincludes a Time of Arrival (TOA) estimate and an RMSE estimate for theearliest arriving pilot signal path, and a Time of Measurement (TOM).The TOM is provided so that the respective relevance of each datameasurement in a group can be determined and given the appropriateconsideration and weight.

In one embodiment the TOA's are stored in digital form, in quantizedunits of time (e.g. chipx16, which is approximately 0.05 microsecond).Two bytes (16 bits) may be used for this value. The RMSE estimates aremeasured in units of U_(RMSE)1 meter. One byte may be used for thisvalue. The TOM values are stored in units of U_(⊃)(0.25) sec from thestart of running the algorithm. One byte may be used for this value.

In the embodiment shown in FIG. 6, an Ec/Io memory space 65 associatedwith the pilot ID 61 stores a single value of Ec/Io for each pilot ID.In alternative embodiments, the PPM database may store each datameasurement for the total energy (Ec/Io) together with its TOA, RMSE,and TOM. One advantage of the single-value approach is to reduce memorystorage requirements, which can be useful in some implementations.Following each new data measurement of Ec/Io, which indicates the totalenergy of the pilot signal (including all resolvable paths) detectedduring a search, the stored value of Ec/Io for that pilot ID is updatedusing a suitable filter. In one embodiment, the stored value for Ec/Iois calculated using a 1 tap IIR filter as follows:

${y\lbrack n\rbrack} = {{\frac{1}{N_{f}}{x\lbrack n\rbrack}} + {\frac{N_{f} - 1}{N_{f}}{y\lbrack {n - 1} \rbrack}}}$

where N_(f) is a variable chosen to assign the relative weight to thecurrent and previous values of Ec/Io. In one embodiment N_(f)=2, whichaverages the previous and current values. In summary, in conjunctionwith each set of data measurements taken in one embodiment, the datameasurements taken during that cycle are recorded in the database andthe Ec/Io value for each pilot ID is updated using the new informationobtained during the search. Typically, each additional data measurementis stored until the number of data measurements stored exceeds theavailable space, and then, the database is updated to determine which ofthe previous measurements will be removed to open a space for the newdata measurement. To update the PPM database, a simple rule may be usedsuch as FIFO (first-in, first-out). The update rule may vary betweenembodiments, dependent upon on a variety of considerations such as theavailable storage space and the rate at which the data measurements aretaken. In such an embodiment, one principle behind the database updateis to store the results from previous search cycles and to compress thedata measurement in such a way as to limit memory consumption.Furthermore, the database update rule should be chosen so as to notthrow away any information except when necessary to make room for newerinformation, which allows most of the collected intelligence to be usedto calculate the representative measurements. As shown in FIG. 6, allthe measurements stored in the database are available for use whilecalculating the representative measurement.

Reference is now made to FIG. 7, which is a flow chart of operations inone embodiment to calculate the representative measurements responsiveto the data measurements.

One goal of the representative measurement calculation is to report thetime of arrival of the earliest detectable path. This can bechallenging, and there are many ways in which this can be accomplished.In a stationary environment, it is reasonable to report the earliestpeak found for each pilot ID regardless of RMSE, and therefore averagingall measurements within a narrow window of the earliest peak helpsreduce bias induced by noise in a stationary environment. However, in amoving environment, it may be desirable to place a greater emphasis onthe most recent measurements. For this reason, in the embodiment shownin the flow chart of FIG. 7 the RMSE values are aged, and the saturatedRMSE values are ignored unless all of the RMSE values for a specificpilot ID are saturated. The RMSE values are not aged for the firstT_(AGE) seconds to prevent unnecessarily saturating weak measurements ifthey occurred in the previous few search cycles. The RMSE reported isthe minimum RMSE of all of the measurements used in computing theaverage time of arrival so that the representative measurement for theRMSE estimate reflects the Ec/Io of the strongest peak seen at that timeof arrival.

In one embodiment the discarded data measurements are not physicallyremoved from the actual PPM database, just ignored for the purpose ofcalculating the representative measurements. Keeping the discardedmeasurements in the database allows the database's contents to remainunaffected by how often a representative measurement is requested by themobile station.

Beginning at the top of the flow chart, the goal is to calculate, foreach pilot ID, a single representative measurement of the TOA, RMSE, andEc/Io that can be used in a position determination algorithm. Forconvenience these representative values will be referred to asTOA_(REP), RMSE_(REP), and Ec/IO_(REP). Although these representativevalues are most likely the most important variables for an AFLTalgorithm, in alternative embodiments different or additional variablescould be utilized.

At 70, the next pilot ID for which representative measurements will becalculated is selected. If this is the first pass through the loop, thefirst pilot ID will be selected at 70. On subsequent passes through theloop each subsequent pilot ID is selected until all representativemeasurements have been determined for all pilot ID's.

At 71, the representative value of Ec/Io is determined. In oneembodiment discussed with reference to FIG. 6, Ec/Io is a single valuethat is repeatedly updated after each search cycle to provide a runningaverage over all instances in which the pilot signal was searched. Thus,in this embodiment the current value of Ec/Io can be usedstraightforwardly without further calculation, and thus therepresentative measurement for Ec/Io is set to the current value(Ec/Io_(REP)=current Ec/Io). In alternative embodiments, such as ifmultiple values of Ec/Io have been stored for a pilot signal, it may benecessary to perform calculations on such stored values of Ec/Io inorder to obtain a representative value for Ec/Io. In the PPM database(shown in FIG. 6 for example) for each pilot ID there are multiple datameasurements stored corresponding to TOA, RMSE, and TOM. Accordingly,these multiple data measurements must be processed to provide a singlevalue for TOA and RMSE. The representative measurement calculationincludes decision-making processes to select which measurements are tobe used and which measurements are not to be used to calculate therepresentative values for TOA and RMSE.

At 72, all measurements for which the TOM is greater than T_(AGE) areaged. One rationale for this is as follows: the uncertainty of ameasurement grows as the measurement ages with time in the database. Toreflect this growing uncertainty, the RMSE estimates for all themeasurements stored in the database are increased dependent upon how oldthe measurements are. In one embodiment the RMSE estimates older than apredetermined time T_(AGE) are increased linearly. In one embodimentthis is accomplished in the following formula:RMSE _(AGED) =RMSE+max(0, 9·(ΔT−T _(AGE)))

where ΔT is the difference between the current time and the time atwhich the measurement was taken. This formula will not age any RMSEestimates that were taken within the first T_(AGE) seconds; furthermore,older RMSE estimates will be aged linearly.

At 72, the RMSE estimates are aged prior to deciding which measurementsto keep in the following steps. In one embodiment to be described, afterfiltering out and discarding unwanted measurements, the RMSE_(REP) thatwill be reported will be the minimum of the aged RMSE values.

Generally, “aging” means that less weight will be given to measurementsthat are further away in time from the last measurement. In oneembodiment, the RMSE's are aged linearly. Note that in one embodimentthe calculated values for RMSE_(AGE) do not physically replace the RMSEestimate in the pilot phase database; rather the aged RMSE values areused only in the calculation of the representative measurement. Thiscould be useful for example if, during a subsequent calculation ofrepresentative values, some of the database values have not changedsince the previous representative measurement calculation.

At 73, a decision is made as to whether or not any measurements for thecurrent pilot ID have an RMSE less than the RMSE_(MAX), which is apredetermined quantity such as 255 in one embodiment. If so, then at 74the measurements having the maximum RMSE are discarded for purposes ofcalculation, leaving only those data measurements that have an RMSE lessthan RMSE_(MAX). However, if none of the data measurements have an RMSEless than RMSE_(MAX), then operation continues on using all the datameasurements not yet discarded.

At 75, all data measurements not meeting a predetermined criteria arediscarded for calculation purposes. In one embodiment, all datameasurements whose TOA is not within a predetermined window of time (Na)from the earliest remaining TOA are discarded; i.e., only themeasurements within the predetermined window are selected. For example,if the earliest remaining TOA is 16 microsecond, and the predeterminedwindow N_(a) is determined to be 3 microsecond, then all datameasurements whose TOA is greater than 19 microsecond are discarded;i.e. all data measurements from 16 microsecond up to and including 19microsecond are kept. The predetermined window of time may be chosen inlight of a variety of factors, such as the number of expectedmultipaths, the number of data measurements stored, among others.

At 76, the remaining measurements (i.e. those not discarded in previoussteps) are used to calculate the representative values for the pilot ID.In one embodiment the remaining TOAs are averaged to provide TOA_(REP),and the minimum RMSE value of the remaining RMSE estimates provide therepresentative value RMSE_(REP). In embodiments that utilize quantizedvalues to store the TOA, it may be useful if the averaging is performedin such a way that averages exactly in-between two quantized values berounded to the earlier value (i.e. if the database contains twomeasurements one unit apart, the average will be equal to the earlier ofthe two measurements).

At 77 the representative measurements, now available, are supplied tothe mobile station, including the position calculation and controlsystem.

At the decision 78, if representative measurements are to be calculatedfor more pilot ID's, then operations continue in a loop through boxes 70through 78 to calculate the representative measurements for each of theremaining pilot ID's. After all the representative measurements havebeen calculated, then the representative measurement calculation processis done.

It will be appreciated by those skilled in the art, in view of theseteachings, that alternative embodiments may be implemented withoutdeviating from the spirit or scope of the invention. This invention isto be limited only by the following claims, which include all suchembodiments and modifications when viewed in conjunction with the abovespecification and accompanying drawings.

1. A method for determining a position of a mobile station using atleast one cellular base station emitting a pilot signal, the methodcomprising: taking first data measurements for resolvable signal pathsfor a pilot signal from a first base station, the first datameasurements including a first earliest time of arrival estimate for theresolvable signal paths and a first time of measurement; taking seconddata measurements for resolvable signal paths of the pilot signal, thesecond data measurements substantially statistically independent of thefirst data measurements, and the second data measurements including asecond earliest time of arrival estimate and a second time ofmeasurement; determining representative data measurements for the firstbase station based on the first data measurements and the second datameasurements, including decreasing weightings of the first and secondearliest time of arrival estimates dependent upon the first and secondtimes of measurement; and determining the position of the mobile stationbased in part on the representative data measurement.
 2. The method ofclaim 1, wherein the first data measurements comprise an RMSE estimateof a path providing the earliest time of arrival estimate.
 3. The methodof claim 1, wherein the first data measurements comprise an energyestimate for all resolvable paths of the pilot signal.
 4. The method ofclaim 1, wherein the second time of measurement differs from the firsttime of measurement by a time difference sufficient to assume the firstdata measurements are substantially statistically independent of thesecond data measurements.
 5. The method of claim 4, wherein the timedifference is greater than about 20 milliseconds.
 6. The method of claim4, wherein the time difference is in the range of 100 milliseconds to 2seconds.
 7. The method of claim 4, wherein the time difference is about0.5 seconds.
 8. The method of claim 1, wherein the first datameasurements and the second data measurements are made from signalsreceived at two different locations in space.
 9. The method of claim 8,wherein the two different locations in space comprise two antennashaving a separation of greater than half of a wavelength of a carrierfrequency of the pilot signal.
 10. The method of claim 1, wherein thefirst data measurements and the second data measurements are made fromsignals received at two different frequencies.
 11. The method of claim10, wherein the two different frequencies differ by greater than 1MegaHertz.
 12. The method of claim 1, wherein determining representativedata measurements for the first base station comprises: determiningwhether each of the first data measurements and the second datameasurements meet a predetermined criteria; and determining therepresentative data measurement based on data measurements meeting thepredetermined criteria.
 13. The method of claim 12, wherein thepredetermined criteria comprises a window of time for estimated earliesttime of arrival.
 14. The method of claim 12, wherein the first andsecond data measurements comprise a respective first and second RMSEestimate of a path providing the earliest time of arrival estimate, andwherein the predetermined criteria comprises a maximum RMSE value. 15.The method of claim 14, wherein determining representative datameasurements for the first base station comprises weighting each of thefirst and second RMSE estimate based on the respective first and secondtime of measurement, including decreasing the weighting of any of thefirst or second RMSE estimates whose time of measurement exceeds athreshold age.
 16. The method of claim 1, wherein determiningrepresentative data measurements for the first base station comprisesaveraging the first and second earliest time of arrival estimates.
 17. Amobile station that utilizes a cellular network that includes aplurality of cellular base stations each emitting a unique pilot signal,the mobile station comprising: a cellular communication system forcommunicating with said cellular base stations and for receiving pilotsignals from each of the plurality of cellular base stations; a databasethat stores a plurality of data measurements based on resolvable pilotsignals received from a first of the plurality of cellular base stationsand a plurality of data measurements based on resolvable pilot signalsreceived from a second of the plurality of cellular base stations, eachof the data measurements including data substantially statisticallyindependent of other data measurements for a respective base station,wherein each of the data measurements includes an earliest time ofarrival estimate for resolvable pilot signals and a time of measurement;a representative measurement calculation system configured to receivethe data measurements from said database, and responsive thereto toprovide a representative measurement of the time of arrival for eachpilot signal, wherein the representative measurement calculation systemis configured to decrease weightings of the earliest time of arrivalestimates of the data measurements dependent upon the times ofmeasurement; and a position calculation and control system configured toreceive said representative measurements for each pilot signal andresponsive thereto, to determine the position of the mobile station. 18.The mobile station of claim 17, wherein said database includes memorythat stores an RMSE estimate for each earliest time of arrival estimate,and said representative measurement calculation system further comprisesmeans for calculating a representative measurement for the RMSE estimatefor each pilot signal.
 19. The mobile station of claim 17, wherein saiddatabase includes memory that stores a total energy value for each ofthe pilot signals received from each of the plurality of cellular basestations.
 20. The mobile station of claim 17, further comprising: a GPScommunication system; and wherein said position calculation and controlsystem is configured to receive GPS data measurements and determine theposition of the mobile station based on the GPS data measurements andthe representative measurements for each pilot signal.
 21. A mobilestation that utilizes a cellular network that includes a plurality ofcellular base stations each emitting a unique pilot signal, the mobilestation comprising: means for taking first data measurements forresolvable signal paths for a pilot signal from a first base station,the first data measurements including a first earliest time of arrivalestimate for the resolvable signal paths and a first time ofmeasurement; means for taking second data measurements for resolvablesignal paths of the pilot signal the second data measurementssubstantially statistically independent of the first data measurements,and the second data measurements including a second earliest time ofarrival estimate and a second time of measurement; means for determiningrepresentative data measurements for the first base station based on thefirst data measurements and the second data measurements, includingmeans for decreasing weightings of the first and second earliest time ofarrival estimates dependent upon the first and second times ofmeasurement; and means for determining the position of the mobilestation based in part on the representative data measurement.